const path = require("path");

module.exports = {
  mode: "development",
  entry: "./src/index.js",
  output: {
    filename: "bundle.js",
    path: path.resolve(__dirname, "./dist"),
    // assetModuleFilename: "[name].[ext]",   // 为每一个资源打包命名
  },
  module: {
    rules: [
      {
        test: /\.css$/,
        use: ["style-loader", "css-loader", "postcss-loader"],
      },
      {
        test: /\.less$/,
        use: ["style-loader", "css-loader", "less-loader", "postcss-loader"],
      },
      {
        test: /\.(png|jpe?g|gif|svg)$/,
        type: "asset", // 使用内置的功能   // 根据文件大小生成文件或base64
        parser: {
          dataUrlCondition: {
            maxSize: 1 * 20, // 成功maxSize时生成单独文件
          },
        },
        generator: {
          filename: "img/[name]_[hash:5].[ext]", // 单独为asset文件打包命名
        },
        // type: "asset/resource",  // 图片生成文件
        // type: "asset/inline", // 图片转base64
      },
    ],
  },
};
